嗨大家好我是Andy,今天來到了第二十四天,我們繼續帶一些常用的函數類型,以及昨天有介紹VirtualAlloc但我發完之後才發現他是有Ex的,所以今天我們也來講一下有Ex和沒有Ex的差別,廢話不說我們直接進入主題。
這是Windows所提供的函數,通常用來分配比較大快的記憶體。
PVOID VirtualAlloc(
PVOID pvAddress,
SIZE_T dwSize,
DWORD fdwAllocationType,
DWORD fdwProtect)
這個是他的函數那我們看一下VirtalAllocEx的
LPVOID VirtualAllocEx(
HANDLE hProcess,
LPVOID lpAddress,
SIZE_T dwSize,
DWORD flAllocationType,
DWORD flProtect
);
看一下兩個函數的差別應該是Ex多出一個hProcess,這個可以讓使得分配的空間指定在一個進程中的內存地址裡面。
創建一個進程中的線程
HANDLE CreateRemoteThread(
HANDLE hProcess,
LPSECURITY_ATTRIBUTES lpThreadAttributes,
SIZE_T dwStackSize,
LPTHREAD_START_ROUTINE lpStartAddress,
LPVOID lpParameter,
DWORD dwCreationFlags,
LPDWORD lpThreadId
);
HANDLE hProcess,
LPTHREAD_START_ROUTINE lpStartAddress,
LPVOID lpParameter,
這邊除了這三個其他都是參考值
這個就是句柄
這個如果是注入的話那就是VirtualAlloc申請的一個地址
如果是卸載的話就是要卸載DLL的地址
淺顯易懂吧~
這個假設是LoadLibrary的話就是要去找win32.dll底下的LoadLibrary在把他key進去以此類推
今天還是一樣複習一下之前調用的函數和了解他,雙十連假終於到了,可以好好耍費了?!好啦今天就先這樣了剛上完班回來好累,我們明天見。